﻿using System.Collections.ObjectModel;
using StockholmsStad.Runtime.Serialization.DataContract;
using StockholmsStad.Runtime.Serialization.DataContract.Enums;
using StockholmsStad.Windows.UI.Modules.Maintenance.Models;

namespace StockholmsStad.Windows.UI.Modules.Maintenance.Interfaces
{
    public interface ITempatesService
    {
        TemplatesPresentationModel AddNewMarriageCertificate();

        ObservableCollection<ValueIdPair> GetAvailableLanguagesForReportDefinition(
            MarriageCertificateType marriageCertificateType);

        ObservableCollection<MarriageCertificateType> GetMarriageCertificateTypes();

        ObservableCollection<ValueIdPair> GetLanguagesForCertificateType(MarriageCertificateType marriageCertificateType);

        TemplatesPresentationModel GetMarriageCertificate(MarriageCertificateType marriageCertificateType,
                                                          ValueIdPair language);
    }
}
